package pck_gui;

import javax.swing.JInternalFrame;
import javax.swing.JOptionPane;
import pck_pojos.Cls_Unidad_Organizativa;
import pck_utilitarios.Cls_Funciones;
import pck_utilitarios.Cls_InvocaWebService;
import pck_utilitarios.Cls_Parametros;
import pck_utilitarios.JP_Modelo;
import pck_utilitarios.Utiles_Panel;
import udprrhh.UDPRRHHView;

/**
 *
 * @author supermiguelon
 */
public class JP_Actualizar_Unidad_Organica extends JP_Modelo {

    /** Creates new form JP_Actualizar_Unidad_Organica */
    private String dni;

    public String getDni() {
        return dni;
    }

    public void setDni(String dni) {
        this.dni = dni;
    }

    public JP_Actualizar_Unidad_Organica() {
        initComponents();
        this.BTN_Buscar.requestFocus();
        BTN_Limpiar.setEnabled(false);
        BTN_Asignar1.setEnabled(false);
    }

    public void limpiar() {
        TXT_Codigo.setText("");
        TXT_Nombre.setText("");
        TXT_Correo.setText("");
        TXT_CodigoDirectiva.setText("");
        this.TXT_Codigo.setText("");
        this.TXT_Cargo.setText("");
        TXT_Encargado.setText("");
        BTN_Actualizar.setEnabled(false);
        BTN_Limpiar.setEnabled(false);
        BTN_Asignar1.setEnabled(false);
        BTN_retirar.setEnabled(false);
    }

    public void obtenerUnidad(String codigo) {
        String parametrosParaService_01[] = {Cls_Parametros.Map_CODIGO_UNIDAD_ORGANICA, codigo};
        Cls_Unidad_Organizativa unidad = Cls_InvocaWebService.obtenerUnidadOrganica(Cls_Funciones.generarHashMapParaSolicitud(parametrosParaService_01));
        if (unidad != null) {
            Cls_Funciones.limpiarTxtField(TXT_Correo, TXT_CodigoDirectiva, TXT_Cargo, TXT_Encargado);
            TXT_Codigo.setText(unidad.getCodigo_area());
            TXT_Nombre.setText(unidad.getNombre());
            if (!unidad.getCorreo_electronico().equals(".")) {
                TXT_Correo.setText(unidad.getCorreo_electronico());
            }
            if (!unidad.getCodig_directiva().equals(".")) {
                TXT_CodigoDirectiva.setText(unidad.getCodig_directiva());
            }
            if (!unidad.getJefe().equals(".")) {
                this.TXT_Encargado.setText(unidad.getJefe());
            }
            if (!unidad.getJefe_cargo().equals(".")) {
                this.TXT_Cargo.setText(unidad.getJefe_cargo());
            }
            if (!unidad.getJefe_dni().equals(".")) {
                this.setDni(unidad.getJefe_dni());
            }
            if (unidad.getJefe_dni().trim().length() <= 1) {
                retirarJefe();
            } else {
                this.BTN_retirar.setEnabled(true);
            }
            BTN_Actualizar.setEnabled(true);
            BTN_Limpiar.setEnabled(true);
            BTN_Asignar1.setEnabled(true);
        } else {
            JOptionPane.showMessageDialog(this, "ESTA UNIDAD ORGANICA NO TIENE RESPONSABLE");
        }
    }

    public void retirarJefe() {
        this.TXT_Encargado.setText("");
        this.TXT_Cargo.setText("");
        this.setDni(".");
        this.BTN_retirar.setEnabled(false);
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        TXT_Codigo = new javax.swing.JTextField();
        BTN_Buscar = new javax.swing.JButton();
        jLabel2 = new javax.swing.JLabel();
        TXT_Nombre = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        TXT_Correo = new javax.swing.JTextField();
        BTN_Actualizar = new javax.swing.JButton();
        BTN_retirar = new javax.swing.JButton();
        jLabel4 = new javax.swing.JLabel();
        TXT_CodigoDirectiva = new javax.swing.JTextField();
        jLabel5 = new javax.swing.JLabel();
        TXT_Encargado = new javax.swing.JTextField();
        BTN_Limpiar = new javax.swing.JButton();
        jLabel6 = new javax.swing.JLabel();
        TXT_Cargo = new javax.swing.JTextField();
        BTN_Asignar1 = new javax.swing.JButton();

        setName("Form"); // NOI18N

        org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance().getContext().getResourceMap(JP_Actualizar_Unidad_Organica.class);
        jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(resourceMap.getString("jPanel1.border.title"))); // NOI18N
        jPanel1.setName("jPanel1"); // NOI18N
        jPanel1.setLayout(null);

        jLabel1.setText(resourceMap.getString("jLabel1.text")); // NOI18N
        jLabel1.setName("jLabel1"); // NOI18N
        jPanel1.add(jLabel1);
        jLabel1.setBounds(20, 30, 50, 14);

        TXT_Codigo.setEditable(false);
        TXT_Codigo.setText(resourceMap.getString("TXT_Codigo.text")); // NOI18N
        TXT_Codigo.setName("TXT_Codigo"); // NOI18N
        jPanel1.add(TXT_Codigo);
        TXT_Codigo.setBounds(80, 30, 80, 20);

        BTN_Buscar.setText(resourceMap.getString("BTN_Buscar.text")); // NOI18N
        BTN_Buscar.setName("BTN_Buscar"); // NOI18N
        BTN_Buscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_BuscarActionPerformed(evt);
            }
        });
        jPanel1.add(BTN_Buscar);
        BTN_Buscar.setBounds(180, 30, 160, 23);

        jLabel2.setText(resourceMap.getString("jLabel2.text")); // NOI18N
        jLabel2.setName("jLabel2"); // NOI18N
        jPanel1.add(jLabel2);
        jLabel2.setBounds(20, 60, 60, 14);

        TXT_Nombre.setEditable(false);
        TXT_Nombre.setText(resourceMap.getString("TXT_Nombre.text")); // NOI18N
        TXT_Nombre.setName("TXT_Nombre"); // NOI18N
        jPanel1.add(TXT_Nombre);
        TXT_Nombre.setBounds(80, 60, 380, 20);

        jLabel3.setText(resourceMap.getString("jLabel3.text")); // NOI18N
        jLabel3.setName("jLabel3"); // NOI18N
        jPanel1.add(jLabel3);
        jLabel3.setBounds(20, 100, 33, 14);

        TXT_Correo.setText(resourceMap.getString("TXT_Correo.text")); // NOI18N
        TXT_Correo.setName("TXT_Correo"); // NOI18N
        jPanel1.add(TXT_Correo);
        TXT_Correo.setBounds(80, 100, 380, 20);

        BTN_Actualizar.setText(resourceMap.getString("BTN_Actualizar.text")); // NOI18N
        BTN_Actualizar.setEnabled(false);
        BTN_Actualizar.setName("BTN_Actualizar"); // NOI18N
        BTN_Actualizar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_ActualizarActionPerformed(evt);
            }
        });
        jPanel1.add(BTN_Actualizar);
        BTN_Actualizar.setBounds(120, 240, 120, 23);

        BTN_retirar.setText(resourceMap.getString("BTN_retirar.text")); // NOI18N
        BTN_retirar.setEnabled(false);
        BTN_retirar.setName("BTN_retirar"); // NOI18N
        BTN_retirar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_retirarActionPerformed(evt);
            }
        });
        jPanel1.add(BTN_retirar);
        BTN_retirar.setBounds(380, 210, 90, 23);

        jLabel4.setText(resourceMap.getString("jLabel4.text")); // NOI18N
        jLabel4.setName("jLabel4"); // NOI18N
        jPanel1.add(jLabel4);
        jLabel4.setBounds(20, 140, 120, 14);

        TXT_CodigoDirectiva.setText(resourceMap.getString("TXT_CodigoDirectiva.text")); // NOI18N
        TXT_CodigoDirectiva.setName("TXT_CodigoDirectiva"); // NOI18N
        jPanel1.add(TXT_CodigoDirectiva);
        TXT_CodigoDirectiva.setBounds(150, 140, 160, 20);

        jLabel5.setText(resourceMap.getString("jLabel5.text")); // NOI18N
        jLabel5.setName("jLabel5"); // NOI18N
        jPanel1.add(jLabel5);
        jLabel5.setBounds(10, 180, 70, 20);

        TXT_Encargado.setEditable(false);
        TXT_Encargado.setText(resourceMap.getString("TXT_Encargado.text")); // NOI18N
        TXT_Encargado.setName("TXT_Encargado"); // NOI18N
        jPanel1.add(TXT_Encargado);
        TXT_Encargado.setBounds(80, 180, 290, 20);

        BTN_Limpiar.setText(resourceMap.getString("BTN_Limpiar.text")); // NOI18N
        BTN_Limpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_LimpiarActionPerformed(evt);
            }
        });
        jPanel1.add(BTN_Limpiar);
        BTN_Limpiar.setBounds(250, 240, 120, 23);

        jLabel6.setText(resourceMap.getString("jLabel6.text")); // NOI18N
        jLabel6.setName("jLabel6"); // NOI18N
        jPanel1.add(jLabel6);
        jLabel6.setBounds(10, 210, 70, 20);

        TXT_Cargo.setEditable(false);
        TXT_Cargo.setName("TXT_Cargo"); // NOI18N
        jPanel1.add(TXT_Cargo);
        TXT_Cargo.setBounds(80, 210, 290, 20);

        BTN_Asignar1.setText(resourceMap.getString("BTN_Asignar1.text")); // NOI18N
        BTN_Asignar1.setName("BTN_Asignar1"); // NOI18N
        BTN_Asignar1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_Asignar1ActionPerformed(evt);
            }
        });
        jPanel1.add(BTN_Asignar1);
        BTN_Asignar1.setBounds(380, 180, 90, 23);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 491, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 268, javax.swing.GroupLayout.PREFERRED_SIZE)
        );
    }// </editor-fold>//GEN-END:initComponents

    private void BTN_BuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_BuscarActionPerformed
        JInternalFrame jif_Unidad_Organica_Buscar;
        JP_Unidad_Organica_Buscar panel = new JP_Unidad_Organica_Buscar(Cls_Parametros.UNIDADES_ORGANICAS_GENERALES);
        jif_Unidad_Organica_Buscar = Utiles_Panel.creaVentanaInternaModal((UDPRRHHView) this.getRef(), panel, "Busca de Unidad Organizativa");
        panel.setPadre(Utiles_Panel.TIPO_JINTERNALFRAME, jif_Unidad_Organica_Buscar);
        panel.setRefDep(this);
    }//GEN-LAST:event_BTN_BuscarActionPerformed

    private void BTN_ActualizarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_ActualizarActionPerformed
        String parametrosParaService_01[] = {Cls_Parametros.Map_CODIGO_UNIDAD_ORGANICA, TXT_Codigo.getText()};
        String parametrosParaService_02[] = {Cls_Parametros.Map_CORREO, TXT_Correo.getText()};
        String parametrosParaService_03[] = {Cls_Parametros.Map_CODIGO_DIRECTIVA, TXT_CodigoDirectiva.getText()};
        String parametrosParaService_04[] = {Cls_Parametros.Map_DNI, this.getDni()};
        String parametrosParaService_05[] = {Cls_Parametros.Map_CARGO, TXT_Cargo.getText()};
        JOptionPane.showMessageDialog(this, Cls_InvocaWebService.actualizarUnidadOrganizativa(Cls_Funciones.generarHashMapParaSolicitud(
                parametrosParaService_01, parametrosParaService_02, parametrosParaService_03, parametrosParaService_04, parametrosParaService_05)));
        limpiar();
    }//GEN-LAST:event_BTN_ActualizarActionPerformed

    private void BTN_retirarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_retirarActionPerformed
        retirarJefe();
    }//GEN-LAST:event_BTN_retirarActionPerformed

    private void BTN_LimpiarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_LimpiarActionPerformed
        limpiar();
    }//GEN-LAST:event_BTN_LimpiarActionPerformed

    private void BTN_Asignar1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_Asignar1ActionPerformed
        JInternalFrame jif_trabajador_Buscar;
        JP_Trabajador_Buscar panel = new JP_Trabajador_Buscar();
        jif_trabajador_Buscar = Utiles_Panel.creaVentanaInternaModal((UDPRRHHView) this.getRef(), panel, "Busca de Especialidades");
        panel.setPadre(Utiles_Panel.TIPO_JINTERNALFRAME, jif_trabajador_Buscar);
        panel.setRefDep(this);
    }//GEN-LAST:event_BTN_Asignar1ActionPerformed

    public void obtenerDatosTrabajador(String cod, String nombre, String cargo) {
        this.setDni(cod);
        this.TXT_Encargado.setText(nombre);
        this.TXT_Cargo.setText(cargo);
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton BTN_Actualizar;
    private javax.swing.JButton BTN_Asignar1;
    private javax.swing.JButton BTN_Buscar;
    private javax.swing.JButton BTN_Limpiar;
    private javax.swing.JButton BTN_retirar;
    private javax.swing.JTextField TXT_Cargo;
    private javax.swing.JTextField TXT_Codigo;
    private javax.swing.JTextField TXT_CodigoDirectiva;
    private javax.swing.JTextField TXT_Correo;
    private javax.swing.JTextField TXT_Encargado;
    private javax.swing.JTextField TXT_Nombre;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JPanel jPanel1;
    // End of variables declaration//GEN-END:variables
}
